草庐IT

android - 重试异步任务

全部标签

javascript - javascript中具有异步回调模式的无限循环

假设我想向服务器发送一个异步AJAX请求,当它响应时发送另一个请求并永远重复:functionsendXHR(url,callback){//SendXMLHttpRequesttoserverandcallcallbackwhenresponseisreceived}functioninfinite(){sendXHR('url/path',infinite);}infinite();我假设这里我们会很快用完堆栈空间,那么我该怎么做(不阻塞)?传递回调而不是使用return的模式在node.js中特别流行。人们如何创建无限循环?我不相信大多数JS引擎会进行任何类型的尾调用优化。

javascript - 异步 - 传递变量并保留上下文

如果你有以下代码:varasyncConfig={};vara,b;for(vari=0;i如何将变量a和b的值传递给func以便当async.auto(asyncConfig)在for循环之后执行,a和b的上下文被保留?(每次执行func时,a和b的上下文不同。)提前致谢! 最佳答案 varasyncConfig={};vara,b;for(vari=0;i 关于javascript-异步-传递变量并保留上下文,我们在StackOverflow上找到一个类似的问题:

javascript - 强制 Protractor 的 onPrepare 等待异步 http 请求

我的Protractorconf.js,onPrepare函数需要发出一个http请求,如下所示,onPrepare:function(done){request.get('http://pepper/sysid').end(function(err,resp){if(err||!resp.ok){log("thereisanerror"+err.message)done()}else{global.sysid=resp.sysiddone()}})它抛出错误,done不是一个函数有没有其他方法可以在我的测试开始执行之前强制调用onPrepare中的回调?

javascript - 在 Angular 2 中使用异步管道访问数组的第一项

如何在使用异步管道时访问数组的第一项?我试过(pageTabs$|async)[0]但它没有用。 最佳答案 找到了一种更简单的方法(无需创建自定义管道):将map添加到可观察对象。component.tsthis.activeTab$=this.pageTabs$.map(x=>x[0]);component.html 关于javascript-在Angular2中使用异步管道访问数组的第一项,我们在StackOverflow上找到一个类似的问题: https

javascript - 用于嵌套数据结构处理的递归异步 JavaScript

我正在寻找一个将以下数据结构作为参数的JavaScript函数:letdata=[{value:'a'},{delay:[{value:'b'},{delay:[{value:'c'}]}]},{value:'d'}];如您所见,数据结构是一个对象数组。每个对象都包含一个属性。这些属性中的每一个都是带有字符串的“值”或带有与其值相同类型的另一个数组的“延迟”。该函数应将每个“值”字符串打印到控制台,并在以相同方式处理延迟数组之前为每个“延迟”暂停两秒钟。该函数应支持任何深度的延迟嵌套。上面显示的两层深度延迟嵌套只是一个例子。上述示例数据的函数输出到控制台的应该是(按此顺序,且仅按此顺序

javascript - 保证Javascript中的异步请求回调顺序

在Javascript中,我有两个异步数据请求:$.getJSON('http://foo.com',fooQuery,fooSuccess(data));$.getJSON('http://bar.com',barQuery,barSuccess(data));和两个处理接收到的数据的回调:fooSuccess(data){//Stuff}barSuccess(data){//MoreStuff}如何确保仅在fooSuccess完成后才执行barSuccess?注意事项:我想保持数据请求的原样:异步和非阻塞(因为服务器响应可能需要一段时间)。但是,我希望处理数据的回调按顺序执行。也就

javascript - Node.JS async.parallel 不会等到所有任务都完成

我正在使用aync.parallel并行运行两个函数。这些函数请求RSS提要。然后RSS提要被解析并添加到我的网页。但由于某些原因async.parallel运行回调方法时没有等到两个函数完成Thedocumentationsays:Oncethetaskshavecompleted,theresultsarepassedtothefinalcallbackasanarray.我的代码。require('async').parallel([function(callback){fetchRss(res,bbcOpts);//Needstimetorequestandparsecallb

javascript - 如何按顺序运行 gulp 任务?

这个问题在这里已经有了答案:HowtorunGulptaskssequentiallyoneaftertheother(15个答案)关闭5年前。我在gulp中有一些任务,除了一个可以并行运行之外,所有这些任务都可以并行运行。让我们考虑一个例子:vargulp=require('gulp');gulp.task('clean',function(){//cleanupoutputfolder});gulp.task('copy1',function(){//writesstreamintheoutputfolder});gulp.task('copy2',function(){//wri

javascript - 使用 promises 时如何在 Javascript 中出现异常后重试?

我正在使用Bluebirdpromise库。我有一系列promise的功能,如下所示:receiveMessageAsync(params).then(function(data)){return[data,handleMessageAsync(request)];}).spread(function(data,response){return[response,deleteMessageAsync(request)];}).spread(function(response,data){returnsendResponseAsync(response);}).then(function

javascript - 如何从需要返回语句的 GraphQL 解析器中调用异步 node.js 函数?

graphql.org/graphql-js上提供的HelloWorld示例创建一个简单的GraphQL实现如下:var{graphql,buildSchema}=require('graphql');//Constructaschema,usingGraphQLschemalanguagevarschema=buildSchema(`typeQuery{hello:String}`);//TherootprovidesaresolverfunctionforeachAPIendpointvarroot={hello:()=>{return'HelloWorld!';}};//Runt